package com.ibeeking.found.upms.b.rest.service;

import com.ibeeking.found.common.entity.CurrentUser;
import com.ibeeking.found.upms.api.common.param.PermissionParam;
import com.ibeeking.found.upms.service.common.bo.CpPermissionBO;
import com.ibeeking.found.upms.service.common.vo.CpPermissionListVO;
import com.ibeeking.found.upms.service.common.vo.CurrentPermissionVO;

import java.util.List;

/**
 * @ClassName ICsPermissionService
 * @Description
 * @Author ibeeking
 * @Date 2021-04-28 12:56
 **/
public interface ICpPermissionService {

    /**
     * 查询所有有效的
     *
     * @return
     */
    List<CpPermissionBO> queryEffective();
    /**
     * 查询菜单树
     *
     * @return
     */
    List<CurrentPermissionVO> queryAllEffectiveTreeList();
    /**
     * 查询用户权限菜单树
     *
     * @param currentUser
     * @param jti
     * @return
     */
    List<CurrentPermissionVO> queryEffectiveTreeList(CurrentUser currentUser, String jti);
    /**
     * 查询客服台的
     *
     * @return
     */
    List<CpPermissionListVO> queryCpList();

    /**
     * 更新菜单
     *
     * @param params
     * @return
     */
    Boolean configurePermission(List<PermissionParam> params);
}
